<?php
/**
* Copyright 2009 Waag Society <http://www.waag.org>
* This file is part of Annotrax.
*
* Annotrax is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License,
* or (at your option) any later version.
*
* Annotrax is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Annotrax.
* If not, see http://www.gnu.org/licenses/gpl.html
*/

?>
<?php
class ErrorController extends Zend_Controller_Action{
    public function errorAction(){
        $errors = $this->_getParam('error_handler');

        switch ($errors->type) {
            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER:
            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION:
                // 404 error -- controller or action not found
				$this->_forward( 'notfound' );
				return;
	            break;
            default:
                // application error
                $this->getResponse()->setHttpResponseCode(500);
                $this->view->content = 'Er, ...Application error?';
                break;
        }
    }

    public function notfoundAction(){
        $this->getResponse()->setHttpResponseCode(404);
    }

    public function noaccessAction(){
       $this->getResponse()->setHttpResponseCode(401);
    }
}
